package io.demo.adaptors;

import io.demo.strategy.FlyBehavior;
import io.demo.strategy.QuackBehavior;

/**
 * @author create by zhangpengfei at 2021/9/30 09:48
 */

public abstract class Turkey {

    FlyBehavior flyBehavior;
    GobbleBehavior gobbleBehavior;

    abstract void gobble();
    abstract void fly();

    public void setFlyBehavior(FlyBehavior flyBehavior) {
        this.flyBehavior = flyBehavior;
    }

    public void setGobbleBehavior(GobbleBehavior gobbleBehavior) {
        this.gobbleBehavior = gobbleBehavior;
    }

    public FlyBehavior getFlyBehavior() {
        return flyBehavior;
    }

    public GobbleBehavior getGobbleBehavior() {
        return gobbleBehavior;
    }
}
